package com.fr.base.core.antlr;

abstract class GrammarElement
{
  public static final int AUTO_GEN_NONE = 1;
  public static final int AUTO_GEN_CARET = 2;
  public static final int AUTO_GEN_BANG = 3;
  protected Grammar grammar;
  protected int line;
  protected int column;

  public GrammarElement(Grammar paramGrammar)
  {
    this.grammar = paramGrammar;
    this.line = -1;
    this.column = -1;
  }

  public GrammarElement(Grammar paramGrammar, Token paramToken)
  {
    this.grammar = paramGrammar;
    this.line = paramToken.getLine();
    this.column = paramToken.getColumn();
  }

  public void generate()
  {
  }

  public int getLine()
  {
    return this.line;
  }

  public int getColumn()
  {
    return this.column;
  }

  public Lookahead look(int paramInt)
  {
    return null;
  }

  public abstract String toString();
}